# 1.如何定义列表
list_01 = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]

# 2.列表的索引
# print(list_01[-1])

# 3.列表在序列中的公共操作
'''
    符号:
        # x in s : 如果 s 中的某项等于 x 则结果为 True，否则为 False
        # x not in s : 如果 s 中的某项等于 x 则结果为 False，否则为 True
        # s + t :  s 与 t 相拼接
        # s * n 或 n * s : 相当于 s 与自身进行 n 次拼接
        # s[i] : 通过索引取值,编程界的索引是从0开始 (索引也可以称为下标)
        # s[i:j] : 切片, s 从 i 到 j 的切片
        # s[i:j:k] : 切片 , s 从 i 到 j 步长为 k 的切片
'''
'''
    函数:
        # len(s) : s 的长度
        # min(s) : s 的最小项
        # max(s) : s 的最大项
'''
'''
    方法:
        # s.index(x[, i[, j]]): x 在 s 中首次出现项的索引号（索引号在 i 后且在 j 前）
        # s.count(x) : x 在 s 中出现的总次数
'''

# 4.如何遍历列表
list_01 = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]

#遍历出来值!
# for i in list_01:
#     print(i)

#遍历出值和索引
# for index in range(len(list_01)):
#     print(index,list_01[index])

#通过枚举方法遍历出值和索引
# print(list(enumerate(list_01)))
# enmu = [(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd'), (4, 'e'), (5, 'f'), (6, 'g'), (7, 'h'), (8, 'i'), (9, 'j')]
# for i in enmu:
#     for j in i:
#         print(j,end=" ")
#     print()

# for i,j in enumerate(list_01):
#     print(i,j)

# 嵌套列表的遍历(将列表扁平化)
list_01 = [["a","b","c"],[1,2,3],["*","+","-","/"],True,None,("DAMU","DLRB","GLNZ")]
# ["a","b","c",1,2,3,"*","+","-","/",True,None,"DAMU","DLRB","GLNZ"]
# for item in list_01:
#     if (type(item) == list) or (type(item) == tuple):
#         for i in item:
#             print(i)
#     else:
#         print(item)

# 5.列表中的常用方法
# 增删改查 (CRUD)
# C: Create 新增操作
list_01 = ["a"]
list_01.append("b")
print(list_01)
list_01.extend([1,2,3])
print(list_01)
list_01.insert(3,"xxxxx")
print(list_01)

# R: Read   查询操作
# 所有的遍历都算查询操作
# 通过索引去取值
# 统计某个元素在列表中出现的次数
print(list_01.count("a"))
# 从列表中找出某个值第一个匹配项的索引位置

# U: Update 更新操作
list_01[3] = "damu"
print(list_01)

# D: Delete 删除操作
# list_01.pop()
# print(list_01)
# list_01.pop(3)
# print(list_01)
# list_01.remove("b")
# print(list_01)
# list_01.clear()
# print(list_01)
del list_01[0]

# 复制
list_02 = list_01.copy()
print(list_02)

# 排序
list_02.reverse()
print(list_02)

list_02 = [1,3,43,5,3,4,3,2,4,566,3,2,45,6,76,6]
list_02.sort(reverse=True)
print(list_02)


